package com.boatAnchorAssistant.service.service.in;

import nirvana.core.domains.vo.PageResult;
import com.boatAnchorAssistant.pojo.param.eventGroup.*;
import com.boatAnchorAssistant.pojo.vo.eventGroup.*;

import java.util.List;


/**
 * 【描 述】：事件分组服务
 * 【环 境】：J2SE
 * 【详 细】：
 */
public interface EventGroupService {

    /**
     * 创建事件分组
     *
     * @param param
     */
    void createEventGroup(CreateEventGroupParam param);

    /**
     * 修改事件分组
     *
     * @param param
     */
    void editEventGroup(EditEventGroupParam param);

    /**
     * 移除事件分组
     *
     * @param id
     */
    void removeEventGroup(Long id);

    /**
     * 启动/禁用事件分组
     *
     * @param id
     */
    void enabledEventGroup(Long id);

    /**
     * 获取事件分组详情
     *
     * @param id
     * @return
     */
    GetEventGroupVo getEventGroup(Long id);

    /**
     * 获取事件分组列表
     *
     * @param param
     * @return
     */
    PageResult<GetEventGroupListVo> getEventGroupList(GetEventGroupListParam param);


    /**
     * 获取事件分组下拉列表
     *
     * @param param
     * @return
     */
    List<GetEventGroupDownListVo> getEventGroupDownList(GetEventGroupDownListParam param);


}